﻿Friend Class LockingStrategyFacotry
  Public Shared Function Create(ByVal strategy As LockingStrategy) As ILockStrategy

    Select Case strategy
      Case LockingStrategy.ReaderWriter
        Return New ReaderWriterLockStrategy()

      Case LockingStrategy.Exclusive
        Return New ExclusiveLockStrategy()

      Case Else
        Throw New ArgumentOutOfRangeException()

    End Select

  End Function
End Class